package com.eight.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;

/**
 * <p>
 * 
 * </p>
 *
 * @author 郭坤
 * @since 2023-02-27
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="TbUser", description="客户信息实体类")
public class TbUser implements Serializable {

    private static final Integer serialVersionUID = 1;

    @ApiModelProperty(value = "会员客户ID")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty(value = "账号")
    @TableField("username")
    private String username;

    @ApiModelProperty(value = "密码")
    @TableField("password")
    private String password;

    @ApiModelProperty(value = "账号状态（帐号启用状态:0->禁用；1->启用）")
    @TableField("status")
    private Integer status;

    @ApiModelProperty(value = "(身份证，护照，军官证，台胞证，港澳台来往内地通行证)")
    @TableField("id_type")
    private String idType;

    @ApiModelProperty(value = "身份证号码")
    @TableField("id_code")
    private String idCode;

    @ApiModelProperty(value = "正面")
    @TableField("path_front")
    private String pathFront;

    @ApiModelProperty(value = "反面")
    @TableField("path_reverse")
    private String pathReverse;

    @ApiModelProperty(value = "客户名字")
    @TableField("name")
    private String name;

    @ApiModelProperty(value = "联系人")
    @TableField("contact_name")
    private String contactName;

    @ApiModelProperty(value = "联系电话")
    @TableField("contact_phone")
    private String contactPhone;

    @ApiModelProperty(value = "联系地址")
    @TableField("contact_address")
    private String contactAddress;

    @ApiModelProperty(value = "驾照号")
    @TableField("license_no")
    private String licenseNo;

    @ApiModelProperty(value = "性别")
    @TableField("sex")
    private String sex;

    @ApiModelProperty(value = "电话")
    @TableField("phone_num")
    private String phoneNum;

    @ApiModelProperty(value = "地址")
    private String address;

    @ApiModelProperty(value = "邮箱")
    @TableField("email")
    private String email;

    @ApiModelProperty(value = "会员级别（普通，金卡，白金，钻石）")
    @TableField("member_level_id")
    private Integer memberLevelId;

    @ApiModelProperty(value = "账户余额")
    @TableField("Account_Balance")
    private Double accountBalance;

    @ApiModelProperty(value = "积分")
    @TableField("integration")
    private Integer integration;

    @ApiModelProperty(value = "成长值")
    @TableField("growth")
    private Double growth;

    @ApiModelProperty(value = "历史积分数量")
    @TableField("history_integration")
    private String historyIntegration;

    @ApiModelProperty(value = "头像")
    @TableField("head_pic")
    private String headPic;

    @TableField(exist = false)
    private TbMemberLevel tbMemberLevel;

}
